O Projeto: Forma Padrão
Um problema de otimização matemática, ou simplesmente problema de otimização, tem a forma minimizar $f_0(x)$ sujeito a $f_i(x) \le b_i$, com $i = 1, \dots, m$. Formalmente, expressamos isso como:
$$\begin{aligned} &\text{minimizar} && f_0(x) \\ &\text{sujeto a} && f_i(x) \le b_i, \quad i=1, \dots, m \end{aligned}$$Essa estrutura é o "DNA" da otimização. Cada símbolo representa um componente crítico do mundo real:
- As Alavancas ($x$): O vetor $x = (x_1, \dots, x_n)$ é a variável de otimização do problema. Elas representam as decisões específicas ou parâmetros sob nosso controle — como o peso do drone e a potência do motor.
- O Objetivo ($f_0$): A função $f_0 : \mathbf{R}^n \to \mathbf{R}$ é a função-objetivo, que quantifica o "custo" ou "perda" que desejamos minimizar, como a energia consumida por quilômetro.
- As Regras ($f_i \le b_i$): As funções $f_i : \mathbf{R}^n \to \mathbf{R}, i = 1, \dots, m$, são as funções de restrição (inequação), enquanto as constantes $b_1, \dots, b_m$ são os limites, ou limites, para as restrições. Elas definem o espaço "viável" — o drone deve gerar sustentação suficiente para voar e não pode exceder um limite de peso da bateria $b_i$.
A Busca pela Solução Ótima
Linearidade versus Não Linearidade
A complexidade de encontrar $x^\star$ depende inteiramente da natureza matemática de $f_0$ e $f_i$.
Se o problema de otimização não for linear (ou seja, não possui proporcionalidade e aditividade), ele é chamado de programa não linear. Programas não lineares são o fronteira selvagem da otimização; eles carecem da estrutura previsível dos sistemas lineares e exigem um conjunto fundamentalmente diferente, frequentemente mais sofisticado, de ferramentas analíticas para resolvê-los.